Skip to content

Fix time skipping for dotnet SDK#2805

Open
Quinn-With-Two-Ns wants to merge 4 commits intotemporalio:masterfrom
Quinn-With-Two-Ns:time-skipping-test-server-nexus-dotnet-fix
Open

Fix time skipping for dotnet SDK#2805
Quinn-With-Two-Ns wants to merge 4 commits intotemporalio:masterfrom
Quinn-With-Two-Ns:time-skipping-test-server-nexus-dotnet-fix

Conversation

@Quinn-With-Two-Ns
Copy link
Contributor

@Quinn-With-Two-Ns Quinn-With-Two-Ns commented Mar 12, 2026

Fix time skipping for dotnet SDK. Fix some Graal config and fix some issues with Nexus operation cancellation.

@Quinn-With-Two-Ns Quinn-With-Two-Ns force-pushed the time-skipping-test-server-nexus-dotnet-fix branch from 4c39801 to bc6bb16 Compare March 12, 2026 18:43
@Quinn-With-Two-Ns Quinn-With-Two-Ns marked this pull request as ready for review March 16, 2026 18:28
@Quinn-With-Two-Ns Quinn-With-Two-Ns requested a review from a team as a code owner March 16, 2026 18:28
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1d3c13c184

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines 2549 to +2551
if (attempt != operation.getData().getAttempt()
|| isTerminalState(operation.getState())) {
|| isTerminalState(operation.getState())
|| operation.getState() == State.STARTED) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Restrict STARTED skip to start-request timeouts

This new State.STARTED short-circuit disables cancel-request timeouts as well as start-request timeouts. Nexus cancel requests are sent from STARTED and remain in STARTED (STARTED + REQUEST_CANCELLATION -> STARTED in StateMachines), so timeoutNexusRequest now always throws NOT_FOUND for cancel timers and never runs the fail/retry/unlock path. In runs where a cancel task is dropped or never answered, the cancel request will no longer time out and time-skipping can stay locked indefinitely.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants